#import "collaboration.h"
#import "event.h"

/**
* @brief Interfaz que define un listener de eventos distribuidos para un componente
* @author Carlos Rodriguez Dominguez
* @date 08/11/2008
*
* Para usar un eventlistener hay que sobrecargar la operacion check para 
* que compruebe si un evento debe ser tratado por ese listener concreto. 
* Sobrecargar la operacion action para que se ejecute una accion concreta.
* Al recibir un evento en el sistema, se asegura que si pasa el filtro
* impuesto por check_event, entonces se ejecuta la operacion action, siempre
* y cuando el componente asociado este activado para recibir y enviar
* eventos de forma colaborativa.
*/
@protocol EventListener
-(BOOL) checkEvent:(Event*)evt;
-(void) action:(id)receiver event:(Event*)evt;
-(NSString*) name;
@end
